System And Method For Delivering Content To Mobile Devices

ABSTRACT

A system for generating an optimized video including in-stream events for video content and advertising content selected at the time of playback. The system includes a manifest generating module configured to retrieve video content from a content repository for listing in a content manifest in response to a received request from a mobile device, the content manifest including at least one advertisement insertion point. The system further includes an advertising event correlation module configured to retrieve one or more advertisements based on a correlation between advertisement properties and playback properties and an advertisement serving module configured to provide the retrieved one or more advertisement for insertion into the at least one advertisement event insertion point.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional Patent No.61/262,695, filed Nov. 19, 2009, the contents of which are herebyincorporated by reference.

BACKGROUND

The present invention relates generally to the field of streamingcontent delivery to a mobile device. More particularly, the presentinvention relates to a system and method for providing in-stream eventsto a mobile device receiving stream data over a wireless networkconnection based on information provided by the mobile device.

Video content events may be provided to a wireless network enabledmobile device for playback in any location where a wireless connectionis available. The video content events may be chosen from a wide varietyof sources and specifically chosen by the user of the device. The videocontent events may optionally be configured to include overlayinteractive content events as further described below. Where a userdesires video content event tailored to their particular interests, forexample, a tourism video related to their current destination, the usermust browser through all of the available video content to find thevideo specific to their interests.

Video advertising event time, using both traditional media such astelevision programming and non-traditional media such as mobile devicesconnected to a wireless network, is typically sold using a standardmodel. Advertising space is purchased and advertisements are presentedalong with the feature content as either pre-roll (played before thevideo programming content, post-roll (played after the video programmingcontent), as interstitials (played at specified periods during one ormore breaks in the video programming content), and/or as interactiveoverlay allowing for content to be display overtop video content duringplayback.

Further, a sales agreement may not specify the particular time that anadvertisement is played. Instead, an agreement between the advertiserand content provider may determine generally when and how frequently theadvertisement is presented. The advertiser may further provide a desiredaudience profile to which the advertisement should be displayed totarget the most receptive audience.

Using mobile network devices, the amount of data that is available fordetermining which advertisement is best suited to a particular viewerhas grown significantly. Exemplary data may include detailed userprofiles, user location information, user activity histories, userpurchasing histories, user location, etc. Any number of advertisementsmay be appropriate at any given point dependent on the particularselection criteria being implemented and the information that isavailable.

However, traditional advertising as described above requiresregeneration of the programming content that is being streamed over awireless network. Even when preformatted for advertising, thepreformatted content could not be easily adapted for particularadvertisements. Requiring regeneration of the content is time intensiveand generally not adaptable to rapid changes that may affect theadvertisement that should be provided at any given point.

What is needed is a system and method for customizing video content andfor providing in-stream event insertion points within the video contentto present advertisements. What is further needed to a system and methodfor allocating a number of advertisements events to an insertion point,where the displayed advertisement will be selected from theadvertisement events based on available mobile device information at thetime of advertisement display.

It would be desirable to provide a system and/or method that providesone or more of these or other advantageous features. Other features andadvantages will be made apparent from the present specification. Theteachings disclosed extend to those embodiments which fall within thescope of the appended claims, regardless of whether they accomplish oneor more of the aforementioned needs.

SUMMARY

The present invention is directed to a system and method for providingvideo content including real-time targeted in-stream events to a mobiledevice connected to the system through a wireless network. Both thecontent and targeted advertising event is provided based on a determinedcorrelation between advertisement properties and playback propertiesreceived by the system from the mobile device at the time theadvertising is provided.

One embodiment of the invention relates to a system for generating anoptimized video including video content and advertising content selectedat the time of playback. The system includes a manifest generatingmodule configured to retrieve video content from a content repositoryfor listing in a content manifest in response to a received request froma mobile device, the content manifest may include at least oneadvertisement insertion point. The system further includes anadvertising event correlation module configured to retrieve one or moreadvertisement events based on a correlation between advertisement eventproperties and playback properties and an advertisement event servingmodule configured to provide the retrieved one or more advertisementevent for insertion into the at least one advertisement event insertionpoint. According to another exemplary embodiment, the video content mayfurther include interactive overlay content.

Another embodiment of the present invention relates to acomputer-implemented method for generating an optimized video includingvideo content and advertising content selected at the time of playback.The method includes retrieving video content from a computer-implementedcontent repository for listing in a content manifest in response to areceived request from a mobile device, the content manifest may includeat least one advertisement event insertion point. The method furtherincludes retrieving one or more advertisements based on a correlationbetween advertisement event properties and playback properties,providing the retrieved one or more advertisement event for insertioninto the at least one advertisement event insertion point, andtransmitting the content manifest of a wireless network to a mobilecomputing device. According to another exemplary embodiment, the videocontent may further include interactive overlay events.

Alternative examples and other exemplary embodiments relate to otherfeatures and combinations of features as may be generally recited in theclaims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will become more fully understood from the followingdetailed description, taken in conjunction with the accompanyingdrawings, wherein like reference numerals refer to like elements, inwhich:

FIG. 1 is a video content delivery system configured to provideadvertisement event insertion points in a video content stream,according to an exemplary embodiment;

FIG. 2 is a video content playback stream including advertisementinsertion points, according to an exemplary embodiment;

FIG. 3 is a video content playback stream where each insertion point isassociated with multiple advertisement events to be selected from basedon real-time information, according to an exemplary embodiment;

FIG. 4 is a flowchart illustrating a method for providing advertisingevent content in a video content stream provided to a mobile playbackdevice, according to an exemplary embodiment; and

FIG. 5 is an advertisement event insertion interface configured to allowa user of the system of FIG. 1 to insert advertising content into a livevideo stream being viewed in the interface, according to an exemplaryembodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Before describing in detail the particular improved system and method,it should be observed that the invention includes, but is not limitedto, a novel structural combination of conventional video contentdelivery components and communications hardware and software, and not inparticular detailed configurations thereof. Accordingly, the structure,methods, functions, control, and arrangement of conventional componentsand circuits have, for the most part, been illustrated in the drawingsby readily understandable block representations and schematic diagrams,in order not to obscure the disclosure with structural details whichwill be readily apparent to those skilled in the art, having the benefitof the description herein. Further, the invention is not limited to theparticular embodiments depicted in the exemplary diagrams, but should beconstrued in accordance with the language in the claims.

Referring to FIG. 1, a video content delivery system 100 configured toprovide a video content stream including video content and one or moreadvertisement event streams provided at designated event insertionpoints in the video content stream is shown, according to an exemplaryembodiment. System 100 includes a content repository 110 and a videocontent processing system 120. System 100 is configured to provide thevideo content stream including one or more advertisement event streamsover a network 130 to a network enabled mobile device 140. Althoughshown according to a specific embodiment, system 100 may alternativelybe configured to include more, fewer, and/or different componentsconfigured to implement functions described herein.

Although advertising events are shown and described in claim 1, system100 may be configured to use with any type of in-stream event. In-streamevents include but are not excluded to video content events, videoadvertising events and interactive overlay events. Each event providesan opportunity to present the content to the user with temporalrelationship to each other.

Content repository 110 may be configured to include a video contentdatabase 112 and an advertising content database 114. Each database isconfigured to store and allow secure retrieval of stored content. Eachdatabase may further include one or more fields to be associated withthe stored content.

Video content database 112 may be a database configured to store andprovide video content for processing and transmission over network 130by video content processing system 110. The video content may includeany type of content such as movies, television programming, usergenerated content, system-specific content, etc. The stored videocontent may further include data associated with the video content suchas theme information, target audience information, length, format, etc.The stored video content may further include video properties associatedwith the video content such as target audience, target locations,content length, etc.

Ad content database 114 may be a database configured to store andprovide advertising event content for insertion into a video streamgenerated by system 110. The advertising content may be generated byadvertisers and provided to system 100 for insertion into a video streambeing transmitted over network 130. The stored advertising content mayfurther include advertisement event properties associated with theadvertising content such as target audience, target timeframe,advertisement length, etc.

Video content processing system 120 may be a software application storedon computer readable medium and configured to generate a video streamincluding video content and one or more advertising stream as will bediscussed hereinbelow. Processing system 120 includes a video servingengine 121 having a playlist manifest generator 122, a platform engine123, an ad event serving engine 124 having an ad event correlationmodule 125, and an advertisement correlation database 126. Video contentprocessing system 120 may be configured to implement the creation of avideo content stream including customized video content and insertion ofadvertisement events into the advertisement event insertion points of avideo stream retrieved from database 112.

Video serving engine 121 is configured to retrieve video content fromvideo content database 112 based on received requests from mobiledevices through network 130. The received requests may be based onchannel selection, specific video content selections, theme selection,etc. Wherein the selection is a theme selection, a channel selection,multiple selections, etc., manifest generator 122 may be used tomaintain a playlist manifest of video content to be successivelyprovided by video serving engine 121. A manifest file provides a videocontent player with temporal instructions on the content to play back,the method of delivery for the content events, and the location of thecontent. The manifest file may optionally include additional informationto support in-stream overlay event presentation. Manifest generator 122may be configured to customize the video content to be provided based oninformation received from the device 140 to which the content will beprovided, as described in further detail below.

Platform engine 123 is computer software configured to modify the videocontent provided by engine 121 to include one or more in-stream eventinsertion points. According to an exemplary embodiment, the in-streamevent insertion points may be configured to be breaks in the videocontent such that the video content is divided into two or more videocontent portion to be provided successively with advertising contentinserted between video content portions. The in-stream event insertionpoints may alternatively be implemented by interrupting the provision ofvideo content to provide advertising content. Following provision of theadvertising event content, provision of the video content may beresumed. The advertisement event insertion point may also be configuredto be at the beginning and/or ending of the video content.Alternatively, the advertising event insertion point may include adslayered over video content (interactive overlay content).

Ad serving engine 124 is configured to retrieve advertising content fromadvertising content database 114. Ad serving engine 124 includes adcorrelation module 125 configured to implement a method for determiningwhich advertising content from advertising content database 114 is to beinserted and provided along with the video content transmitted throughnetwork 130 as will be discussed in further detail below. Advertisementcorrelation database 126 is configured to store and allow retrieval ofdata allowing ad correlation module 125 to determine the advertisingcontent to be provided. The add correlation module 125 determines theadvertisements to be played based on a determined correlation betweenthe advertisement properties and the playback properties of the networkenabled mobile device 140 as described below.

Network 130 may be any wireless network configured to allow transmissionof information from system 120 to mobile device 140. Exemplary networksmay include cellular networks, WiFi networks, or any other type ofnetwork for providing information to network enabled mobile device 140.

Network enable mobile device 140 may be any type of device configured toreceive and play back video content and display interactive overlaycontent received over a wireless network device. Exemplary devices mayinclude smartphones, netbooks, laptop computers, tablets, etc. Device140 may be configured to include a playback properties database 142.Playback properties database 142 may be configured to store and allowretrieval of information related to device 140 for transmission tosystem 120. Exemplary information may include device information such asidentification of the types of video files that can be played on thedevice, historical usage information, location information (for example,using global positioning data generated by device 140), user information(for example, in a user profile created by the user of device 140),location GPS merged with map location (i.e., retail location, touristlocation, etc.), time of day, device screen resolution, devicecapabilities, device network connection type, device network carrier,device available bandwidth, rate of movement, direction of movement,altitude of movement, location to peer network, transactional data, (forexample, to purchase good and services from merchants that are with theproximity of the mobile device), etc.

Referring to FIG. 2, a video content playback stream 200 includingadvertisement event insertion points 220 is shown, according to anexemplary embodiment. Stream 200 may be implemented as a graphical userinterface 210 allowing a user to drag and drop advertising contentand/or video content into one or more insertion points 220.Alternatively, stream 200 may be implemented automatically by videoserving engine 121 and/or correlation engine 123 to insert video and/oradvertising content into one or more advertisement insertion points 220in the stream 200 based on video properties, advertisement propertiesand playback properties as discussed in detail below with reference toFIG. 4.

Alternatively, the advertising content may be provided as interactiveoverlay content to be displayed contemporaneously with the videocontent. The interactive overlay content may be configured to besubstantially transparent and/or occupy only a portion of a screen so asto minimize interference with the display of the video content. Theinteractive overlay content may include one or more interactive featureswhere selection of a feature will initiate an advertising process. Theadvertising process may include, for example display of a web page of anadvertiser including directions from the user's current location,determined using system 100, to a retail location, displaying additionalinformation based on the overlay content, etc.

Referring now to FIG. 3, a video content playback stream 300 where eachadvertisement event insertion point 220 is associated with multipleadvertisements to be selected from based on real-time information,according to an exemplary embodiment. Associating multipleadvertisements with each event insertion point 220 allows ad correlationmodule 125 to determine, in real-time, which of the multipleadvertisements will be displayed. The advertisement may be displayed ona rotation basis, based on strength of correlation, etc. The displayedadvertising content may be displayed based on a comparison betweenreceived playback properties and advertising content target information.

Although shown in FIG. 3 as a video stream 300 including a plurality ofadvertisements for each event insertion point, video stream 300 may alsobe implemented including a plurality of potential differing videocontent for insertion into stream 300. The displayed video content maybe selected based on received playback properties.

Referring now to FIG. 4, a flowchart 400 illustrating a method forproviding advertising content in a video content stream provided to amobile playback device is shown, according to an exemplary embodiment.The method of flowchart 400 may be implemented using platform engine123.

In a step 410, an advertising provider may upload advertising content tobe stored in database 114. The advertising content may be a videosegment, such as a television commercial, web-based applications, astatic image to be displayed for a period of time, or any other type ofadvertising content.

In a step 420, the advertising provider may provide advertising contenttarget information to be associated with the advertising content storedin database 114. The target information may include a target viewerdemographic, target geographic information, target timing information,target display device information, target video content typeinformation, and/or any other type of information that the advertisingprovider wishes to provide that may be used by system 100 to determinethe type of mobile devices that will be targeted to receive thatspecific advertising content.

In a step 430, the advertising provider may indicate that theinformation provided to system 100 is complete such that the advertisingcontent should be displayed in accordance with the information providedin step 420.

In a step 440, a user of a network enabled mobile device sends a requestfor video content to system 100 for display on the device. Thetransmitted request may be configured to include one or more playbackproperties. Alternatively, device 140 may include a program configuredto transmit the information to system 100. The information may be sentat setup, during key points of the video stream, periodically, etc.

In a step 450, the video content and the advertising content is providedby system 100 in a single video stream over network 130 or a pluralityof video streams, e.g. a first stream including the video content and atleast a second stream including interactive overlay event content. Thecombined content may be provided to the mobile device as an optimizedstream. An optimized stream is formatted for the mobile device based onthe characteristics of the mobile device, such as the media player type,supported file types, wireless transmission speeds, etc.

According to one exemplary embodiment, the playback properties mayinclude time information, real-time location GPS information, altitudeinformation, direction of movement, rate of movement, etc. such thatengine 123 ma, for example, apply known movement patterns, trafficpatterns, routes, etc. such as by train, highway, airplane, pedestrian,etc. to determine a potential mode of transportation and eventualdestination. For example, engine 123 may determine that device 140 isbeing used on an airplane based on the above information and determine apredicted destination or future location. The video content and theadvertising content may be customized in step 450 based on thisinformation to present video content and the advertising content with amuch higher degree of relevancy.

According to another exemplary embodiment, engine 123 may userpeer-to-peer communication techniques between devices to infer thelocation of a device 140 and target content based on the proximity ofdevice 140 to known locations. For example, devices may be placed withina grocery store chain and as the user of device 140 moves along shoppingaisles; the video stream may be customized to display marketing videosto the user. Accordingly to another example, an interactive overlay maybe displayed in conjunction with the video content to market products.

The provided optimized stream may be modified at any time during theplayback of the video content. Since the video content is divided into aplurality of portion in a manifest, advertising events and/or videoevents may be interchanged at will up to the time that the content isprovided over network 130. For example, a user can change the targetaudience for an advertising content from New York viewers to Chicagoviewers. This change will cause removal of the advertising content fromplaylists of mobile devices that are known to be in New York, and theadvertising content will be queued with other advertising content formobile devices that are known to be in Chicago. Similarly, a userviewing playback on a mobile device when travelling may be presentedwith advertising content that is specific to the user location at thetime the advertisement insertion point is to be provided.

The user of system 100 has the ability to generate video streams usingtwo or more video streams and advertising event insertion points. Thepublisher can select a video stream as the master stream and insert anew video stream at any point in time within or at the end of the masterstream. At each event insertion point the publisher can establishtargeting properties for the new stream to ensure only mobile devicestargeted for the content are able to view the stream. At each eventinsertion point one or more streams can be inserted, each with differenttargeting properties for the mobile devices. For example, the masterstream may be a 30 minute comedy show and user of system 100 has soldadvertising spots targeting one specific type of mobile device. The saleof the advertising spots entails a promise to show sponsoredadvertisements at 3 different times during the playback of videocontent: at the start, end and at the 15 minute mark. Furthermore, theuser of system 100 may sell different advertisements for the East Coastand West Coast. In this scenario, the user of system 100 may insert 2streams at the beginning; middle and end of the feature content eachwith properties to target the East or West Coast. From a viewerperspective, they would see only 1 of the 2 ads in each of the 3 slotsalong with the feature content. The playback viewing experience isseamless to the viewer as if they were viewing the feature content onthe television.

Although described above with reference to customizing video content,one of ordinary skill in the art should understand that the videocontent to be inserted may also be customized. For example, a userviewing a video on how to build a deck may receive deck building videocontent that is customized to their particular location. In other words,the deck building video may be selected from a plurality of deckbuilding videos based on the user's geographic location when viewing thevideo. For example, the video content may provide different instructionsbased on local building codes, frost lines, soil types, etc.

Referring now to FIG. 5, an advertisement event insertion interface 500configured to allow a user of system 100 insert advertising content intoa live video stream being viewed in the interface is shown, according toan exemplary embodiment. Interface 500 may be configured to include alive video feed display 510; a customized video feed display 520, andone or more content insertion buttons 530.

Using interface 500, a user such as a local broadcaster, may use system100 to insert customized video content to be displayed to viewers oflive video feed display 510 in place of the live video feed. Forexample, a local broadcaster viewing the live video feed in display 510may desire to insert a local advertisement or a local video content inplace of what is being shown in display 510. The local broadcaster mayuse buttons 530 and/or any other interface to initiate insertion of thecustomized video content and/or advertisement using the method describedabove with reference to FIG. 4. Buttons 530 may include differenttimings as shown in FIG. 5 or may include other customizable controls,such as video frame of a plurality of customized local content, asdescribed above with reference to FIG. 3, allowing the user to selectthe content to be inserted. The customized video feed may be displayedto the user in display 520.

While the detailed drawings, specific examples and particularformulations given described preferred and exemplary embodiments, theyserve the purpose of illustration only. The inventions disclosed are notlimited to the specific forms shown. For example, the methods may beperformed in any of a variety of sequence of steps. The hardware andsoftware configurations shown and described may differ depending on thechosen performance characteristics and physical characteristics of thecomputing devices. For example, the type of renderer, number of mipmaplevels, or processor used may differ. The systems and methods depictedand described are not limited to the precise details and conditionsdisclosed. Furthermore, other substitutions, modifications, changes, andomissions may be made in the design, operating conditions, andarrangement of the exemplary embodiments without departing from thescope of the invention as expressed in the appended claims.

1. A system for generating an optimized video including video events,advertising events and interactive overlay events selected at the timeof playback, comprising: a manifest generating module configured toretrieve video content from a content repository for listing in acontent manifest in response to a received request from a mobile device,the content manifest including at least one advertisement eventinsertion point; an advertising correlation module configured toretrieve one or more advertisements based on a correlation betweenadvertisement properties and playback properties; and an advertisementevent serving module configured to provide the retrieved one or moreadvertisement for insertion into the at least one advertisementinsertion point.
 2. The system of claim 1, wherein the playbackproperties include a mobile device type for the mobile device.
 3. Thesystem of claim 1, wherein the playback properties include a geographiclocation of the mobile device.
 4. The system of claim 1, wherein theplayback properties include a time of day.
 5. The system of claim 1,wherein the playback properties include a user profile generated by auser of the mobile device.
 6. The system of claim 1, the advertisingcorrelation module is configured to determine the advertisements to beprovided at the time the advertisements are to be transmitted to themobile device.
 7. The system of claim 6, wherein the advertisingcorrelation module is configured to periodically request updates to theplayback properties from the mobile device during a transmission of theoptimized video.
 8. The system of claim 6, wherein the advertisingcorrelation module is configured to periodically provide interactiveoverlay events to be display contemporaneously with the video content.9. A computer-implemented method for generating an optimized videoincluding video content and advertising content selected at the time ofplayback, comprising: retrieving video content from acomputer-implemented content repository for listing in a contentmanifest in response to a received request from a mobile device, thecontent manifest including at least one advertisement event insertionpoint; retrieving one or more advertisements based on a correlationbetween advertisement properties and playback properties; providing theretrieved one or more advertisement event for insertion into the atleast one advertisement event insertion point; and transmitting thecontent manifest of a wireless network to a mobile computing device. 10.The method of claim 9, wherein the playback properties include a mobiledevice type for the mobile device.
 11. The method of claim 9, whereinthe playback properties include a geographic location and one or moremovement characteristics of the mobile device.
 12. The method of claim11, further including generating a predicted destination based on theplayback properties and wherein retrieving one or more advertisementsbased on a correlation between advertisement properties and playbackproperties includes retrieving the advertisement based on the predicteddestination.
 13. The method of claim 9, wherein the playback propertiesinclude a user profile generated by a user of the mobile device.
 14. Themethod of claim 9, wherein providing the retrieved one or moreadvertisement event for insertion into the at least one advertisementevent insertion point includes determining the advertisements to beprovided at the time the advertisements are to be transmitted to themobile device.
 15. The method of claim 14, further includingperiodically requesting updates to the playback properties from themobile device during a transmission of the optimized video.
 16. A systemfor generating an optimized video including video content andadvertising content selected at the time of playback, comprising: amanifest generating module configured to retrieve video content from acontent repository for listing in a content manifest in response to areceived request from a mobile device, the content manifest including atleast one advertisement insertion point; an advertisement serving moduleconfigured to provide advertisement content for insertion into the atleast one advertisement insertion point; wherein at least one of thevideo content and the advertisement content is selected based on acorrelation between the content and playback properties received fromthe mobile device.
 17. The system of claim 16, wherein the playbackproperties include a mobile device type for the mobile device.
 18. Thesystem of claim 16, wherein the playback properties include a geographiclocation of the mobile device.
 19. The system of claim 16, wherein theplayback properties include a time of day.
 20. The system of claim 16,wherein the playback properties include a user profile generated by auser.